package com.zsrt.java.day20161227.zsh.demo06;
import java.util.Scanner;

/**
 * 	已知	： 一个String数组，11个null值元素，用于存储姓名，可进行增加、删除、修改、查询、退出操作
 * 	求	： 输入1、2、3、4、5、姓名，做出相应操作
 * 	分析	： 1、键盘输入姓名和操作代号，
 * 		  2、输入1——姓名增加，先增加到值为null的元素（判断出值为null的第一个元素，再修改它的值为姓名）；
 * 		  3、输入2——姓名删除，查询数组元素值与姓名同，再删除数组的这个元素（注意：存在多个相同值以查询到的第一个为操作目标）
 * 		  4、输入3——姓名修改，输出数组中的姓名，存在的才可以修改（使用数组修改元素内容）
 * 		  5、输入4——姓名查询，直接进行数组元素内容查询，找到返回所在下标值（存在多个相同姓名则返回第一个查找到的元素下标），不存在（查找不到）返回-1
 * 		  6、输入5——退出循环（ break;退出操作 ）。
 */


public class NameQAUD {
	public static void main(String[] args) {
		
		String[] mingce=new String[11];
		Scanner sc=new Scanner(System.in);
		
		while(true){
		System.out.println("选择代表的数字【  1）增加\t2）删除\t3）修改\t4）查询\t5）退出 】输入：");
		int select=sc.nextInt();
		
		if(select==1){
			System.out.println("您选择增加姓名到名册中，请输入要增加的姓名：");
			String addName=sc.next();

/*			if(addName.length()>1&&addName.length()<=4){
			}
			*/
				for(int i=0;i<mingce.length;i++){
					if(mingce[i]==null){
		                mingce[i]=addName;
		                break;
		            }else{
		            	ArrayQAUD.addNum(mingce,addName);	
		            }
				}
				
			System.out.println("新的名册有以下姓名：");
			for(int x=0;x<mingce.length;x++){
				if(mingce[x]==null){
					continue;
				}
				System.out.println(mingce[x]);
			}
			System.out.println("姓名已经添加到名册中，操作完成.");
		}else if(select==2){
			System.out.println("名册中有以下姓名：");
			for(int p=0;p<mingce.length;p++){
				if(mingce[p]==null)
					continue;
				System.out.println(mingce[p]);
			}
			System.out.println("您选择删除名册中姓名，请输入要删除的姓名：");
			String deleteName=sc.next();
			mingce=ArrayQAUD.deleteNum(mingce,deleteName);
			System.out.println("删除"+deleteName+"后，新名册中有以下姓名：");
			for(int p=0;p<mingce.length;p++){
				if(mingce[p]==null)
					continue;
				System.out.println(mingce[p]);
			}
		}else if(select==3){
			System.out.println("名册中有以下姓名：");
			for(int p=0;p<mingce.length;p++){
				if(mingce[p]==null)
					continue;
				System.out.println(mingce[p]);
			}
			System.out.println("您选择修改名册中姓名，请查看名称中的姓名，输入需要进行修改的姓名：");
			String oldName=sc.next();
			System.out.println("您想把姓名:"+oldName+" 修改为：");
			String newName=sc.next();
			if(ArrayQAUD.queryArray(mingce,oldName)==-1){
				System.out.println("姓名不存在！");
			}else {
				mingce=ArrayQAUD.updateNum(mingce,oldName,newName);
				System.out.println("修改"+oldName+"后，新名册中有以下姓名：");
			}
			
			for(int p=0;p<mingce.length;p++){
				if(mingce[p]==null)
					continue;
				System.out.println(mingce[p]);
			}
			
		}else if(select==4){
			System.out.println("输入你想查询的姓名（2~4个有效字符）：");
			String queryname=sc.next();
			int index=ArrayQAUD.queryArray(mingce,queryname);
			if(index==-1){
				System.out.println(queryname+"不在");
			}else{
				System.out.println(queryname+"在，在名册的第"+index+1+"位");
			}
		}else if(select==5){
			System.out.println("结束操作，退出");
			break;
		}

	}
	sc.close();
	}	
}